//
//  Extension+UIImage.swift
//  LZTWeibo
//
//  Created by Yin jianxun on 16/8/18.
//  Copyright © 2016年 YinJianxun. All rights reserved.
//

import UIKit

extension UIImage {
    
    //自定义键盘 获取Image
    class func emoticonImage(emoticonModel: LZTEmoticonModel) -> UIImage? {
        
        let png = emoticonModel.png ?? ""
        
        let path = emoticonModel.path ?? ""
        
        let image = UIImage(named: "\(path)\(png)", inBundle: LZTEmoticonTools.sharedTools.emoticonsBundle, compatibleWithTraitCollection: nil)
        
        return image
    }
    
    //图片压缩 等比率压缩
    //上下文进行图片压缩 需要用户指定压缩的宽度
    class func dealImageScale(image: UIImage, width: CGFloat) -> UIImage{
        
        //如果规定的width大于实际图片的宽度 则直接返回 没有必要压缩
        if image.size.width < width {
            return image
        }
        
        //等比率算出的高度
        let height = image.size.height * width / image.size.width
        
        //上下文的rect 和渲染后的图片的大小一致
        let rect = CGRect(x: 0, y: 0, width: width, height: height)
        
        //01 开启上下文
        UIGraphicsBeginImageContext(rect.size)
        //02 渲染内容到上下文
        image.drawInRect(rect)
        //03 从上下文获取image
        let result = UIGraphicsGetImageFromCurrentImageContext()
        //04 关闭上下文
        UIGraphicsEndImageContext()
        
        return result
    }
}
